All numerical results in the paper were computed with fortran program "main.f90", which in turn calls on subroutines contained in modules in the other files. The choice of (k,n0) is determined in global constants in "basicmodule.f90" (fixing k during compilation helps the compiler produce faster code). The output is saved in text files, which are subsequently processed into latex tables or further processed for the Figures. In particular, "lamth.tar" contains the resulting approximate least favorable distributions for various combinations of k, n0 and the level of the test.

Compilation uses the Intel® Fortran Compiler 19.0.5.281, along with the IMSL Numerical Libraries Version 7.01 via the command

/nologo /MP /O3 /QxHost /Qip /fpp /I"C:\Program Files (x86)\VNI\imsl\fnl701\Intel64\include\dll" /I"C:\Program Files (x86)\VNI\imsl\fnl701\Intel64\include\static" /assume:nosource_include /assume:nocc_omp /Qopenmp /standard-semantics /real-size:64 /names:uppercase /module:"x64\Release\\" /object:"x64\Release\\" /Fd"x64\Release\vc150.pdb" /check:none /libs:static /threads /Qmkl:sequential /c

The format of the lamth files is as follows: the name of the files are of the form _k_n0_1000*alpha, so that an ending of "_8_50_10.txt", for instance, describes the approximate least favorable distribution for k=8, n0=50 (=the default parameter space and value of k), for a 1%=(10/1000) level test. The "lamth" files are for the "two-tailed" test in equation (11) of the paper. They contain 7 rows, with first row the lambda_i value, and the remaining 6 rows the corresponding theta_i value. The "lamth_stage1" files are for the "one-tailed" test in equation (5) and contain 4 rows, with the first row the lambda^S_i value, and the remaining 3 rows the corresponding theta^S_i values. The number of columns in each file is equal to the number of support points M or M^S, respectively. 

Note that the lambda values are multiplied by sqrt(2*Pi) relative to the notation in the paper, so that the standard normal pdf phi(x) in equations (8) and (13) can simply be coded as phi(x)=exp(-.5*x^2). 

The orginal hmda file is a zip file of the 2.7GB 2016 HMDA "hmda2016.csv" master file downloaded on 8/1/2017 from www.consumerfinance.gov. That file was transformed into the Fortran unformatted file "hmdamaster.fin" by the routine "hmdastoredata" in "hmdamod.f90" to speed up repeated reads of the data.
